package com.dks.repository;

import com.dks.dto.BaseIdRequestDto;
import com.dks.dto.student.AppointClassDto;
import com.dks.dto.student.PositionWaitDto;
import com.dks.exception.BaseException;
import com.dks.models.student.AppointmentClassStrategy;
import com.dks.result.ResultModel;
import com.dks.util.PageInfo;

public interface IAppointmentClassRepository {


    ResultModel<PageInfo<AppointmentClassStrategy>> getStrategyList(Integer pageNum, Integer pageSize);

    ResultModel<AppointmentClassStrategy> getStrategy(Integer id);

    ResultModel<Boolean> fixed(AppointClassDto appointClassDto) throws BaseException;

    ResultModel<Boolean> temporary(AppointClassDto appointClassDto) throws BaseException;

    ResultModel<Boolean> experience(AppointClassDto appointClassDto);

    ResultModel<Boolean> fixedWait(PositionWaitDto positionWaitDto) throws BaseException;

    ResultModel<Boolean> fiexedWaitCancel(BaseIdRequestDto baseIdRequestDto) throws BaseException;
}
